<?php
require 'ArrayRecursion.php';
require 'LinkedList/LinkedList.php';
require 'LinkedListRecursion.php';
/**
 * 递归实现数组求和
 */
$arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
echo ArrayRecursion::recursionSum($arr);

/**
 * 递归删除链表中指定元素
 */
/**
 * 首先实例化一个链表，向链表中添加50个元素
 */
$linkedList = new LinkedList();
for ($i = 0; $i < 50; $i++) {
    if ($i % 7 == 0) {
        $linkedList->addFirst(99);
    } else {
        $linkedList->addFirst($i);
    }
}

//echo $linkedList->toString();
/**打印
 * 99->48->47->46->45->44->43->99->41->40->39->
 * 38->37->36->99->34->33->32->31->30->29->99->27->
 * 26->25->24->23->22->99->20->19->18->17->16->15->
 * 99->13->12->11->10->9->8->99->6->5->4->3->2->1->99->null
 */

//递归删除链表指定元素
echo LinkedListRecursion::deleteElement($linkedList, 99)->toString();

/**打印
 * 48->47->46->45->44->43->41->40->
 * 39->38->37->36->34->33->32->31->
 * 30->29->27->26->25->24->23->22->
 * 20->19->18->17->16->15->13->12->
 * 11->10->9->8->6->5->4->3->2->1->null
 */